﻿#pragma once
#define _CRT_SECURE_NO_WARNINGS 1
#pragma warning(disable:6031)


#include<stdio.h>
#include<assert.h>
#include<stdlib.h>




typedef int LinkData;


typedef struct linklist
{
	LinkData data;
	struct linklist* next;
}link;


//创建新节点
link* buylink(LinkData Data);
//尾插法
void SLTPushBack(link** pphead, LinkData Data);
//头插法
void SLTPushFront(link** pphead, LinkData Data);
//打印链表
void print(link* phead);
//寻找节点
link* find(link* phead, LinkData data);
//在指定节点后插入
void SLTInsertAfter(LinkData loc, LinkData data, link* phead);
//在指定节点前插入
void SLTInsert(LinkData loc, LinkData data, link** pphead);
//尾删
void SLTPopBack(link** pphead);
//头删
void SLTPopFront(link** pphead);
//删除指定节点
void SLTErase(link** pphead, LinkData data);
//销毁链表
void del(link* phead);
//取出栈顶元素
void put(link* phead);